#ifndef VELOCITY_H
#define VELOCITY_H

#include "Acceleration.h"

class Velocity {
	private:
	  float m_vel;								//Velocity
	  Acceleration m_acc;						//Acceleration
	  int	m_step;
	public:
	  Velocity();								//Default Constructor
	  Velocity( float, const Acceleration &, int );
	  Velocity( const Velocity & );
	  const Velocity & operator=( const Velocity & );
	  ~Velocity();

	  float Tick();								//Update velocity based on acceleration and return new value
	  void SetAccel( const Acceleration & );	//Give a new acceleration value for ticks
	  void SetVelocity( float );				//Give a new velocity
	  void SetStepping( int stepping );
	  Acceleration GetAcceleration();			//Return acceleration
	  float GetVelocity();
};

#endif //VELOCITY_H